package ooday04;
import java.util.Scanner;
public class AnonInnerClassDemo {
    public static void main(String[] args) {

        Scanner scan = new Scanner(System.in);
        int age = scan.nextInt();
        double price = scan.nextDouble();
        /*
            import java.util;//调用java.util包
            class Scanner{//加载Scanner类到ooday04类
                创建Scanner对象(InputStream s)
                调用Scanner类的方法 nextInt,将返回值给age
                调用Scanner类的方法 nextDouble,将返回值给price
            }

            }

         */

        //1)创建一个Inter的派生类,但是没有名字
        //2)给这个派生类创建一个对象,名为o1,向上造型为Inter类型
        //----new Inter(){}是在创建Inter的派生类对象
        Inter o1 = new Inter(){};


        //1)创建一个Inter的派生类,但是没有名字
        //2)给这个派生类创建一个对象,名为o2,向上造型为Inter类型
        //-----new Inter(){}是在创建Inter的派生类对象
        Inter o2 = new Inter(){};

        int num = 5;
        num = 6;
        //1)创建一个InterInter的派生类,但是没有名字
        //2)给这个派生类创建一个对象,名为o3,向上造型为InterInter类型
        //3）大括号中的为派生类的类体
        InterInter o3 = new InterInter() {
           public void show() {//重写接口中的抽象方式时必须加public
               System.out.println("showshow");
               //num = 7;//编译错误,匿名内部类中不能修改外面局部变量的值
                        //因为该变量此处会默认为final的
            }
        };
        o3.show();
    }
}
interface InterInter{
    void show();
}

interface Inter{
}
